home *** CD-ROM | disk | FTP | other *** search
- /* *********************************************************************************
-
- MODULE: EmailOnLogin Module
-
- DESCRIPTION: This EmailOnLogin Module is a simple module for MUBBS, the
- Multi-User Bulliten Board System Software.
-
- AUTHOR: Noam Freedman
-
- Copyright © 1990 by Noam Freedman. Portions are also Copyright Symantec Corp.
-
- This program source code and it's compiled version IS NOT IN THE
- PUBLIC DOMAIN ! Please read the "COPYRIGHT NOTICE / NMF" file for details
- regarding use of this program source code and it's compiled version.
-
- Revision History:
- ============================================================
- 10/20/91 - Started programming
- 11/ 4/91 - Edited for release
- ============================================================
-
-
- ******************************************************************************** */
-
- #define INMAIN
-
- #include "MUBBS Module.h"
- #include "Email.h"
- #include <SetUpA4.h>
-
-
- pascal void main (mode1,G1,P1) /* called from the main routines, and what mode to be in */
- int mode1;
- struct GS *G1; /* we point to the "global" struct in the Main Module here */
- Ptr P1; /* we ignore this pointer, we do not use it at all */
- {
- Handle temph;
- float version = 0.5; /* what version of MUBBS you are compatable with IE: .5 and above */
- RememberA0(); SetUpA4(); /* This sets up the A4 register to access our globals */
- asm { _RecoverHandle }; asm {move.l a0,temph}; HLock(temph); /* locks our module, do this ! */
-
- G=G1; /* This MUST be the first thing you do in main only, it sets up the struct globals */
- mode[u]=mode1; /* set up our mode so that you can read it anywhere */
-
- switch (mode[u]) { /* any un-handled modes return error from this module */
- case 2:
- dostuff();
- G->moduleresult=0;
- break;
- case 98:
- versionck(version); /* just return after this call, don't modify anything */
- break;
- case 0:
- strcpy (G->programmer,"Noam Freedman"); /* show the programmer's name up to 20 chars*/
- G->moduleresult=0; /* this was also a init call if we need close call put 99 here */
- break;
- default:
- G->moduleresult=1; /* return bad code */
- };
-
- HUnlock(temph); /* unlocks this module, do this ! */
- RestoreA4(); /* call this when you are all done */
- }
-
-
- dostuff()
- {
- char pad[100]; /* this is a fix for a problem */
- int a = 0;
- int b = 0;
- int num;
- char pad2[100]; /* this is a fix for a problem */
- struct LoadStruct S;
- FILE *fp_headers;
-
- if (!G->online[u]) { return; } /* do this check so we can log out if hang up */
-
-
- module (3,"check_email",&S);
-
- if (S.result == 21)
- {
- send("]You have no mail waiting.]");
- return;
- }
-
- if (S.result != 0 && S.result != 20) return;
-
- send("]*************************]");
- send( "* YOU HAVE MAIL ! *]");
- send( "*************************]");
- if (!cmd1("]Would you like to go to the Mail Menu now (Y/N)? ") ) return;
- send(G->CR[u]);
- if (G->input[u] == 'Y')
- {
- module (2,"check_for_email",0L);
- send("]]Continuing with log on...]]");
- }
-
- }
-
-